package com.example.my2lcache;

import com.example.my2lcache.domain.CacheValue;

/**
 * 缓存接口层
 *
 * @author huhao
 */
public interface Cache {

    /**
     * 设置缓存
     *
     * @param key        键
     * @param cacheValue 缓存值
     */
    void set(String key, CacheValue cacheValue);

    /**
     * 获取缓存
     *
     * @param key 键
     * @return 缓存值
     */
    CacheValue get(String key);

    /**
     * 删除值
     *
     * @param key 键
     */
    void del(String key);

    /**
     * 判断键是否存在
     *
     * @param key 键
     * @return true：存在，false：不存在
     */
    Boolean exists(String key);
}
